﻿var $CargoErrorMsg
var $cargos_pesquisar;

$(function(){

	$cargos_pesquisar = $("#form_cargo_pesquisar");

	getCargos(1);
	getStatus();

	$(".keypress").on("keypress",function(e){
		var code = e.keyCode || e.which;
		if(code == 13) { //Enter keycode
			getCargos(1);
		}
	});

	$inputNome =	$("input#nome");	
	var $CargoErrorMsg = "<br>Erro ao inserir!";
	
	$("#cargo_form").validate({
		rules:{
            nome:{
                // campoNome será obrigatorio (required) e terá tamanho minimo (minLength)
                required: true, minlength: 2, maxlength : 40
            },
            cmb_cod_status : {
            	required: true	
            }
        },
        // Define as mensagens de erro para cada regra
        messages:{
            nome:{
                required	: "<br>Informe o nome",
                minlength   : "<br>Digite no m&iacute;nimo, 2 (sete) caracteres",
                maxlength   : "<br>Digite no m&aacute;ximo, 40 (sete) caracteres"
            },
            cmb_cod_status : {
            	required	: ""
            }
        },
        errorPlacement: function( error, element ) {
			error.html() == $CargoErrorMsg ? $(".cargo-credentials").after(error) : error.insertAfter(element);
		},
		submitHandler: function(form) {
			bi.LightboxExibe({lightbox: "load"});
			$.ajax({
				type : 'POST', 
				url  : 'ajax/insere.asp?acao=setCargo',
				data : {
				nome 	    		    : $inputNome.attr("value"), 
				cod_status_cargo	    : $("select#cmb_cod_status").attr("value"),
				cod_cargo			    : $("input#cod_cargo").attr("value")
				},
				success : function(data){
					bi.LightboxEsconde({lightbox: "lgt_novo"});
					bi.Alertas({tipo : 'sucesso', texto : 'Dados cadastrado com sucesso!',titulo : 'Aviso'})
					bi.LightboxEsconde({lightbox: "load"});
					$("#nome").attr("value",'');
					getCargos($("input#pagina").attr("value"));
				}
			});
		}
	});


	$cargos_pesquisar.validate({
        submitHandler: function(form){
	        getCargos(1);
        }
	});
});


function pesquisar(){
	$cargos_pesquisar.submit();
	return false;
}

function abreLgh(editar){
    if(editar == 0){
    	$("#cod_cargo").attr("value","0");
        $("#nome").attr("value","");
        $("#cmb_cod_status").attr("value","");
        $("#edit_cargo").css("display","");
        $("#view_cargo").css("display","none");
        $("#edit_status").css("display","");
        $("#view_status").css("display","none");
        $("#botoes").css("display","");
    }
    bi.LightboxExibe({lightbox: "lgt_novo"});
    return false;
}

function gravar(){
	$("#cargo_form").submit();
	return false;
}


function getEditarCargo($cod_cargo){

	bi.LightboxExibe({lightbox: "load"});
	$.ajax({
		type : 'POST',
		dataType: "text",
		url : 'ajax/cargo_pesquisar.asp?acao=getEditarCargo',
		data : {cod_cargo : $cod_cargo},
		success : function(data){
			if (data){
				var inf = eval("(" + data + ")");
				if(inf.data.cod_usuario_tipo == 1){
					$('#inf_cadastro_status').html(inf.data.desc_status);
					$('#inf_cadastro_cargo').html(inf.data.nome);
					$("#edit_status").css("display","none");
					$("#edit_cargo").css("display","none");
					$("#botoes").css("display","none");
					$("#view_status").css("display","");
					$("#view_cargo").css("display","");
				}else{
					$("#cmb_cod_status").attr("value",inf.data.cod_status);
					$("#botoes").css("display","");
					$("#edit_status").css("display","");
					$("#edit_cargo").css("display","");
					$("#view_status").css("display","none");					
					$("#view_cargo").css("display","none");
				}
				$("#nome").attr("value",inf.data.nome);
				$("#cod_cargo").attr("value",inf.data.cod_cargo);

				bi.LightboxExibe({lightbox: "lgt_novo"});
				bi.LightboxEsconde({lightbox: "load"});
			}
		},
		error : function (error){
			bi.LightboxEsconde();
			alert(error.responseText);
		} 
	});
	return false;
}

function getStatus(){
	$.ajax({
		type : 'POST',
		url  : 'ajax/cargo_pesquisar.asp',
		data : {acao : 'getStatus'},
		success : function(data){
			$("#cmb_cod_status").html(data);
		}
	});
}


function getCargos($pg_sel){
	bi.LightboxExibe({lightbox: "load"});
	$.ajax({
		type : 'POST',
		dataType : 'text',
		url  : 'ajax/cargo_pesquisar.asp',
		data : {
			nome 	: $("#filtro_cargo").attr("value"),
			pg_sel 	: $pg_sel,
			acao	: "getCargos"
		},
		success : function(data){
			$("#retorno_cargos").html(data);
			bi.LightboxEsconde({lightbox: "load"});
		},
		error : function (error){
			bi.LightboxEsconde({lightbox: "load"});
			alert(error.responseText);
		}
	});
	return false;
}
